Video and/or other digital media may be sent between computing devices over a network. In some examples, videos may be encoded by a server, sent to a client computing device, where it is decoded and played back by the client computing device while subsequent portions of the video are still being transmitted to the client computing device by the server. Such video transmission and playback is often referred to as “streaming”. Network conditions can change during streaming due to changes and/or increases in network traffic. For example, network conditions may sometimes deteriorate, which may lead to pauses or degradation of the streaming video as it is played.
Provided herein are technical solutions to improve sending of video and other types of data that may reduce problems associated with changing network conditions.